package com.master.demo.im.pojo.vo;

import com.master.common.utils.DateUtil;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * 会话内容对象 VO
 *
 * @author: Yang
 * @date: 2022-08-09
 * @version: 1.0.0
 * Copyright Ⓒ 2022 恒翔 Computer Corporation Limited All rights reserved.
 */
@Data
public class SessionMessageVO implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    private Long id;

    /**
     * 创建人
     */
    private String createUser;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 操作类型 0：聊天；1：加入
     */
    private String action;

    /**
     * 发送人
     */
    private String sender;

    /**
     * 接收人
     */
    private String receiver;

    /**
     * 标题
     */
    private String title;

    /**
     * 内容
     */
    private String content;

    /**
     * 内容格式 0：文字；1：图片；2：语音；3：视频；4：文件；5、名片；6、超链接
     */
    private String format;

    /**
     * 补充字段
     */
    private String extra;

    /**
     * 时间戳
     */
    private String timestamp;

    /**
     * 消息是否读取 0->已读;1->未读
     */
    private Integer isRead;

    /**
     * 格式化时间
     *
     * @return
     */
    public String getTime() {
        if (LocalDate.now().equals(this.createTime.toLocalDate())) {
            return DateUtil.formatLocalTime(this.createTime.toLocalTime(), DateUtil.TIME_MIN_FORMATTER);
        }
        return DateUtil.formatLocalDate(this.createTime.toLocalDate(), "yyyy/MM/dd");
    }

}
